import {
	baseurl
} from "./baseurl.js"
import {
	tokenObj
} from "@/common/token.js"
//上传图片的地址
// export const upLoadImg=`${baseurl}api/common/image`
export default {
	// 全局配置
	common: {
		baseUrl: baseurl,
		header: {
			// 'Content-Type': 'application/json;charset=UTF-8',
			'Content-Type': 'application/x-www-form-urlencoded',
			'token': tokenObj.token
		},
		data: {},
		method: 'GET',
		dataType: 'json'
	},

	// 请求 返回promise
	request(options = {}) {
		// 组织参数
		options.url = this.common.baseUrl + options.url
		options.header = options.header || this.common.header
		options.data = options.data || this.common.data
		options.method = options.method || this.common.method
		options.dataType = options.dataType || this.common.dataType
		if (tokenObj.token) {
			Object.assign(options.header, {
				token: tokenObj.token
			})
		}
		// if (store.getters.token) {
		// 	options.data.ton_ken = options.data.ton_ken || store.getters.token
		// }
		// 请求
		return new Promise((res, rej) => {
			// 请求之前... todo
			// 请求中...
			uni.request({
				...options,
				success: (result) => {
					console.log(result);
					switch (result.statusCode) {
						case 200:
							switch (result.data.code) {
								case 200:
							}

							break
						case 500:
							uni.showToast({
								title: '500: 内部服务器错误',
								icon: 'none',
								duration: 1500
							});
							break
						case 400:
							uni.showToast({
								title: '400: 参数错误',
								icon: 'none',
								duration: 1500
							});
							break
						case 404:
							uni.showToast({
								title: '404 Not Found',
								icon: 'none',
								duration: 1500
							});
							break
						case 401:
							uni.showToast({
								title: '登录失效',
								icon: 'none'
							});
							setTimeout(function() {
								uni.redirectTo({
									url: '../login'
								})
							}, '2000')
							break

					}
					// return result;
					// if (result.data.code == 200) {
					// 	console.log(111111)
					// 	uni.showToast({
					// 		title: '500: 内部服务器错误',
					// 		icon: 'none',
					// 		duration: 1500
					// 	});
					// }
					// 服务端成功
					// if (result.statusCode == 200) {
					// 	if (result.data.code == 200) {
					// 		return res(result.data)
					// 	} else if (result.data.code == 500) {
					// 		return res(result.data)
					// 	} else if (result.data.code == 3) {
					// 		return res(result.data)
					// 	} else {
					// 		// uni.showToast({
					// 		// 	title: result.data.message,
					// 		// 	icon: 'none'
					// 		// }); 
					// 		return res(result.data)
					// 	}
					// } else if (result.statusCode == 500) {
					// 	uni.showToast({
					// 		title: '500: 内部服务器错误',
					// 		icon: 'none',
					// 		duration: 1500
					// 	});
					// 	console.log('500', result);
					// } else if (result.statusCode == 400) {
					// 	uni.showToast({
					// 		title: '400: 参数错误',
					// 		icon: 'none',
					// 		duration: 1500
					// 	});
					// 	console.log('400', result);
					// } else if (result.statusCode == 405) {
					// 	uni.showToast({
					// 		title: '405: 传参方式错误',
					// 		icon: 'none',
					// 		duration: 1500
					// 	});
					// 	console.log('405', result);
					// } else if (result.statusCode == 404) {
					// 	uni.showToast({
					// 		title: '404 Not Found',
					// 		icon: 'none',
					// 		duration: 1500
					// 	});
					// 	console.log('404', result);
					// } else if (result.statusCode == 401) {
					// 	uni.showToast({
					// 		title: '请进行授权，跳转页面即可',
					// 		icon: 'none',
					// 		duration: 1500
					// 	});
					// 	console.log('404', result);
					// } else if (result.statusCode == 415) {
					// 	uni.showToast({
					// 		title: '415: 服务器无法处理请求附带的媒体格式',
					// 		icon: 'none',
					// 		duration: 1500
					// 	});
					// 	console.log('415', result);
					// } else if (result.data.code == 401) {
					// 	uni.showToast({
					// 		title: '登录失效',
					// 		icon: 'none'
					// 	});
					// 	setTimeout(function() {
					// 		uni.redirectTo({
					// 			url: '../login'
					// 		})
					// 	}, '2000')
					// 	console.log('other error', result);
					// } else {
					// 	uni.showToast({
					// 		title: result.data.msg,
					// 		icon: 'none'
					// 	});
					// 	console.log('other error', result);
					// }

				},
				fail: (error) => {
					console.log(error)
					uni.showToast({
						title: '网络连接失败',
						icon: 'none'
					});
					return rej()
				}
			});
		}).catch((e) => {});
	},
	// get请求
	get(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'GET'
		return this.request(options)
	},
	// post请求
	post(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'POST'
		return this.request(options)
	},
	// delete请求
	del(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'DELETE'
		return this.request(options)
	},
	// options请求
	options(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'options'
		return this.request(options)
	},
	// put请求
	put(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'put'
		return this.request(options)
	},
	// head请求
	head(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'head'
		return this.request(options)
	},
	// trace请求
	trace(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'trace'
		return this.request(options)
	},
	// connect请求
	connect(url, data = {}, options = {}) {
		options.url = url
		options.data = data
		options.method = 'connect'
		return this.request(options)
	},
}